Java অ্যাপ্লিকেশনে Derby Embedded Mode ব্যবহার

Database Tutorials - অ্যাপাচি ডার্বি (Apache Derby) উদাহরণসমূহ এবং ব্যবহারিক ডেমো |
216
216

Apache Derby এর Embedded Mode হল একটি বিশেষ মোড যেখানে ডেটাবেস সার্ভার ছাড়াই ডেটাবেস অ্যাপ্লিকেশন চলতে পারে। এতে Java অ্যাপ্লিকেশন থেকে ডেটাবেসের সাথে সরাসরি যোগাযোগ করা যায়, এবং ডেটাবেসের সমস্ত কার্যক্রম Java প্রোগ্রামের ভিতরেই পরিচালিত হয়। এটি সাধারণত ডেটাবেস অ্যাপ্লিকেশনগুলিতে ব্যবহৃত হয় যেখানে ডেটাবেস সার্ভার আলাদা না হয়ে সরাসরি অ্যাপ্লিকেশনের অংশ হিসেবে কাজ করে।

Embedded Mode এ, Apache Derby আপনার Java অ্যাপ্লিকেশনের অংশ হয়ে ওঠে এবং ডেটাবেস সংযোগটি আপনার অ্যাপ্লিকেশন পরিবেশের মধ্যে স্বাভাবিকভাবে কাজ করে। এটি ডেটাবেস সার্ভারের প্রয়োজনীয়তা কমিয়ে আনে এবং Java অ্যাপ্লিকেশনগুলির মধ্যে ডেটাবেস ব্যবহারের একটি সরল, হালকা পদ্ধতি সরবরাহ করে।


Apache Derby Embedded Mode এর সুবিধা

  1. ডেটাবেস সার্ভারের প্রয়োজন হয় না: অ্যাপ্লিকেশনটির সাথে ডেটাবেস সরাসরি অন্তর্ভুক্ত থাকে, ফলে ডেটাবেস সার্ভারের আলাদা কনফিগারেশন বা পরিচালনার দরকার নেই।
  2. পারফরম্যান্স: সরাসরি অ্যাপ্লিকেশনের মধ্যে ডেটাবেস কাজ করার কারণে পারফরম্যান্সে উন্নতি হয় এবং ডেটাবেসের সঙ্গে সংযোগের জন্য নেটওয়ার্কের কোনও বিলম্ব থাকে না।
  3. সহজ ডিপ্লয়মেন্ট: অ্যাপ্লিকেশনটি পোর্টেবল হয় কারণ এটি ডেটাবেস সার্ভার ছাড়াই কাজ করতে সক্ষম। ডেটাবেস ফাইলগুলো অ্যাপ্লিকেশনের অংশ হয়ে থাকে এবং একত্রে মোবাইল বা ডেস্কটপ অ্যাপ্লিকেশনগুলিতে ডিপ্লয় করা যায়।

Java অ্যাপ্লিকেশনে Derby Embedded Mode ব্যবহারের ধাপসমূহ

১. Apache Derby ডাউনলোড এবং সেটআপ

প্রথমেই Apache Derby ডাউনলোড করুন:

ডাউনলোড করার পর এটি আপনার প্রোজেক্টে যোগ করুন। যদি আপনি Maven ব্যবহার করেন, তবে এটি pom.xml এ নিচের মত নির্দিষ্ট করে দিতে পারেন:

<dependency>
    <groupId>org.apache.derby</groupId>
    <artifactId>derby</artifactId>
    <version>10.15.2.0</version>
</dependency>

২. Derby Embedded Mode এ ডেটাবেস সংযোগ

Apache Derby Embedded Mode এ ডেটাবেসের সাথে সংযোগ করতে, আপনি সাধারণভাবে DriverManager ব্যবহার করতে পারেন, যা JDBC API এর মাধ্যমে ডেটাবেসের সাথে যোগাযোগ করে।

নিম্নলিখিত কোডটি Derby Embedded Mode-এ ডেটাবেসের সাথে সংযোগ স্থাপন করে:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class DerbyEmbeddedExample {
    public static void main(String[] args) {
        // ডেটাবেস URL, যেখানে ডেটাবেস সংরক্ষিত হবে
        String dbURL = "jdbc:derby:myDB;create=true";
        Connection conn = null;

        try {
            // Derby ড্রাইভার লোড করা
            Class.forName("org.apache.derby.jdbc.EmbeddedDriver");

            // ডেটাবেস সংযোগ
            conn = DriverManager.getConnection(dbURL);
            System.out.println("ডেটাবেস সংযোগ সফল!");

            // স্টেটমেন্ট তৈরি করা
            Statement stmt = conn.createStatement();

            // টেবিল তৈরি করা
            String createTableSQL = "CREATE TABLE employees (id INT, name VARCHAR(100))";
            stmt.executeUpdate(createTableSQL);
            System.out.println("টেবিল তৈরি হয়েছে।");

            // ডেটাবেস সংযোগ বন্ধ করা
            stmt.close();
            conn.close();
            System.out.println("সংযোগ বন্ধ করা হয়েছে।");

        } catch (SQLException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

৩. ডেটাবেসে ডেটা ইনসার্ট করা

একটি টেবিল তৈরি করার পর, আপনি ডেটাবেসে ডেটা ইনসার্ট করতে পারেন। নিম্নলিখিত কোডটি employees টেবিলে ডেটা ইনসার্ট করার উদাহরণ:

String insertSQL = "INSERT INTO employees (id, name) VALUES (1, 'John Doe')";
stmt.executeUpdate(insertSQL);
System.out.println("ডেটা ইনসার্ট করা হয়েছে।");

৪. টেবিল থেকে ডেটা পড়া

ডেটাবেসে ইনসার্ট করা ডেটা পড়তে, আপনি SELECT কুয়েরি ব্যবহার করতে পারেন:

import java.sql.ResultSet;

String selectSQL = "SELECT * FROM employees";
ResultSet rs = stmt.executeQuery(selectSQL);

while (rs.next()) {
    int id = rs.getInt("id");
    String name = rs.getString("name");
    System.out.println("ID: " + id + ", Name: " + name);
}

rs.close();

৫. ডেটাবেস বন্ধ করা

অ্যাপ্লিকেশনটির কাজ শেষ হলে, close() মেথড ব্যবহার করে ডেটাবেসের সংযোগ বন্ধ করা উচিত।

conn.close();

Derby Embedded Mode এর সীমাবদ্ধতা

  1. Multi-user Support: Embedded Mode শুধুমাত্র একটি প্রক্রিয়ার জন্য উপযুক্ত। অর্থাৎ, একাধিক অ্যাপ্লিকেশন বা ক্লায়েন্ট একই ডেটাবেসে কাজ করতে পারবে না। যদি আপনি মাল্টি-ইউজার সাপোর্ট চান, তাহলে Network Server Mode ব্যবহার করা উচিত।
  2. Scalability Issues: যদিও Embedded Mode ছোট ও মাঝারি আকারের অ্যাপ্লিকেশনের জন্য উপযুক্ত, তবে বড় আকারের অ্যাপ্লিকেশন বা উচ্চ লোডের পরিস্থিতিতে এটি পারফরম্যান্সের সীমাবদ্ধতা সৃষ্টি করতে পারে।

উপসংহার

Apache Derby Embedded Mode একটি সহজ, হালকা এবং কার্যকরী ডেটাবেস সমাধান যা Java অ্যাপ্লিকেশনগুলির মধ্যে ডেটাবেস ব্যবহারের জন্য আদর্শ। এটি ডেটাবেস সার্ভারের প্রয়োজন ছাড়াই ডেটাবেস সংরক্ষণ এবং পরিচালনা করতে সাহায্য করে, যা ছোট অ্যাপ্লিকেশন বা প্রোটোটাইপ ডেভেলপমেন্টের জন্য উপযুক্ত। তবে, মাল্টি-ইউজার এবং উচ্চ পারফরম্যান্সের অ্যাপ্লিকেশনের জন্য এটি সীমাবদ্ধ হতে পারে, এবং সেক্ষেত্রে Network Server Mode ব্যবহারের পরামর্শ দেওয়া হয়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion